
#include <iostream>

int num_run_test = 0;
int num_ok_test = 0;
int num_fail_test = 0;

int GetRunTest(void)
{
	return num_run_test;
}

int GetOkTest(void)
{
	return num_ok_test;
}

int GetFailTest(void)
{
	return num_fail_test;
}

void TDD_Assert(char *cad, bool isTrue)
{	
	num_run_test++; //Estamos ejecutando un nuevo test

	if(isTrue)
	{
		num_ok_test++;	//El test es ok.
	}
	else
	{
		std::cout << cad << std::endl;
		num_fail_test++;
	}
}

void PrintSummary(void)
{
	if (!GetFailTest())
	{
		std::cout << "ALL TDD TEST ARE OK!!!" << std::endl;
 	}
	else
	{
		std::cout<< "TDD FAIL. STOP ALL AND FIX IT.RIGHT NOW!!!!" << std::endl;
	}

	std::cout << "Run: " << GetRunTest() << "  Ok: " << GetOkTest() << "  Fail: " << GetFailTest() << std::endl;
}